﻿using System;
using System.Collections.Generic;
using System.Linq;
<<<<<<< .mine
using System.Text;
using MySql.Data.MySqlClient;
using Entidades1;
using System.Data;
=======
using System.Text;
using MySql.Data.MySqlClient;
using Entidades1;
using System.Data;
using Entidades1;
using MySql.Data.MySqlClient;
>>>>>>> .r21

namespace SisVetDAO
{
    public class MySqlVeterinarioDAO : IVeterinarioDAO
    {
<<<<<<< .mine
       public string s;
        MySqlConnection conector = new MySqlConnection();
        string connectionString;

        public MySqlVeterinarioDAO() {

        }

        public void iniciarConexion() {
            try {
                connectionString = "Server=localhost;Database=prueba;Uid=root;";
                conector.ConnectionString = connectionString;
                conector.Open();
                 s ="La conexion se ha realizado con exito";

            }
            catch(Exception ex) {
                s = ex.Message;
            }

        }

        public void Conectar()
        {
            iniciarConexion();
        }

        public void Desconectar()
        {
            conector.Close();
        }

        public void SetConexion(IDbConnection conexion)
        {
            conector =(MySqlConnection)conexion;
        }

        public void Insertar(Veterinario v)
        {
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "insert into veterinario(cedula, nombre, apellido, telefono, direccion, email) Values(?Cedula,?Nombre,?Apellido,?Telefono,?Direccion,?Email)";
            cmd.Parameters.AddWithValue("?Cedula", v.cedula);
            cmd.Parameters.AddWithValue("?Nombre", v.nombre);
            cmd.Parameters.AddWithValue("?Apellido", v.apellido);
            cmd.Parameters.AddWithValue("?Telefono", v.telefono);
            cmd.Parameters.AddWithValue("?Direccion", v.direccion);
            cmd.Parameters.AddWithValue("?Email", v.email);
            cmd.ExecuteNonQuery();
        }

        public List<Veterinario> getTodos()
        {
            List<Veterinario> lst = new List<Veterinario>();
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "Select * From veterinario";
            MySqlDataReader reader = cmd.ExecuteReader();
            while (reader.Read()) {
                Veterinario v = new Veterinario();
                v.cedula = reader["cedula"].ToString();
                v.nombre = reader["nombre"].ToString();
                v.apellido = reader["apellido"].ToString();
                v.telefono = reader["telefono"].ToString();
                v.direccion = reader["direccion"].ToString();
                v.email = reader["email"].ToString();
                lst.Add(v);
            }
            return lst;
        }

        public void actualizar(Veterinario v)
        {
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "UPDATE veterinario SET nombre=?Nombre, apellido=?Apellido, telefono=?Telefono, direccion=?Direccion, email=?Email WHERE cedula=?Cedula;";
            cmd.Parameters.AddWithValue("?Cedula", v.cedula);
            cmd.Parameters.AddWithValue("?Nombre", v.nombre);
            cmd.Parameters.AddWithValue("?Apellido", v.apellido);
            cmd.Parameters.AddWithValue("?Telefono", v.telefono);
            cmd.Parameters.AddWithValue("?Direccion", v.direccion);
            cmd.Parameters.AddWithValue("?Email", v.email);
            cmd.ExecuteNonQuery(); 
        }
=======
<<<<<<< .mine
       public string s;
        MySqlConnection conector = new MySqlConnection();
        string connectionString;

        public MySqlVeterinarioDAO() {

        }

        public void iniciarConexion() {
            try {
                connectionString = "Server=localhost;Database=prueba;Uid=root;";
                conector.ConnectionString = connectionString;
                conector.Open();
                 s ="La conexion se ha realizado con exito";

            }
            catch(Exception ex) {
                s = ex.Message;
            }

        }

        public void Conectar()
        {
            iniciarConexion();
        }

        public void Desconectar()
        {
            conector.Close();
        }

        public void SetConexion(IDbConnection conexion)
        {
            conector =(MySqlConnection)conexion;
        }

        public void Insertar(Veterinario v)
        {
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "insert into veterinario(cedula, nombre, apellido, telefono, direccion, email) Values(?Cedula,?Nombre,?Apellido,?Telefono,?Direccion,?Email)";
            cmd.Parameters.AddWithValue("?Cedula", v.cedula);
            cmd.Parameters.AddWithValue("?Nombre", v.nombre);
            cmd.Parameters.AddWithValue("?Apellido", v.apellido);
            cmd.Parameters.AddWithValue("?Telefono", v.telefono);
            cmd.Parameters.AddWithValue("?Direccion", v.direccion);
            cmd.Parameters.AddWithValue("?Email", v.email);
            cmd.ExecuteNonQuery();
        }

        public List<Veterinario> getTodos()
        {
            List<Veterinario> lst = new List<Veterinario>();
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "Select * From veterinario";
            MySqlDataReader reader = cmd.ExecuteReader();
            while (reader.Read()) {
                Veterinario v = new Veterinario();
                v.cedula = reader["cedula"].ToString();
                v.nombre = reader["nombre"].ToString();
                v.apellido = reader["apellido"].ToString();
                v.telefono = reader["telefono"].ToString();
                v.direccion = reader["direccion"].ToString();
                v.email = reader["email"].ToString();
                lst.Add(v);
            }
            return lst;
        }

        public void actualizar(Veterinario v)
        {
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "UPDATE veterinario SET nombre=?Nombre, apellido=?Apellido, telefono=?Telefono, direccion=?Direccion, email=?Email WHERE cedula=?Cedula;";
            cmd.Parameters.AddWithValue("?Cedula", v.cedula);
            cmd.Parameters.AddWithValue("?Nombre", v.nombre);
            cmd.Parameters.AddWithValue("?Apellido", v.apellido);
            cmd.Parameters.AddWithValue("?Telefono", v.telefono);
            cmd.Parameters.AddWithValue("?Direccion", v.direccion);
            cmd.Parameters.AddWithValue("?Email", v.email);
            cmd.ExecuteNonQuery(); 
        }
=======
        public string s;
        MySqlConnection conector = new MySqlConnection();
        string connectionString;

        public void iniciarConexion()
        {
            try
            {
                connectionString = "server=localhost;User Id=root;database=proyecto;";
                conector.ConnectionString = connectionString;
                conector.Open();
                s = "La conexion se ha realizado con exito";

            }
            catch (Exception ex)
            {
                s = ex.Message;
            }

        }

        public void Conectar()
        {
            iniciarConexion();
        }

        public void Desconectar()
        {
            conector.Close();
           
        }

        public void SetConexion(System.Data.IDbConnection conexion)
        {
            conector = (MySqlConnection)conexion;
            
        }

        public void Insertar(Entidades1.Veterinario v)
        
            {
                MySqlCommand cmd = conector.CreateCommand();
                cmd.CommandText = "insert into veterinario(Id, Nombre,Apellido,Telefono,Direccion,Email) Values(?Id,?Nombre,?Apellido,?Telefono,?Direccion,?Email)";
                cmd.Parameters.AddWithValue("?Id", v.Id);
                cmd.Parameters.AddWithValue("?Nombre", v.Nombre);
                cmd.Parameters.AddWithValue("?Apellido", v.Apellido);
                cmd.Parameters.AddWithValue("?Telefono", v.Telefono);
                cmd.Parameters.AddWithValue("?Direccion", v.Direccion);
                cmd.Parameters.AddWithValue("?Email", v.Email);
                cmd.ExecuteNonQuery();

            
                  }

        public List<Entidades1.Veterinario> getTodos()
        {
            List<Entidades1.Veterinario> lst = new List<Entidades1.Veterinario>();
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "Select * From veterinario";
            MySqlDataReader reader = cmd.ExecuteReader();
            while (reader.Read())
            {
                Entidades1.Veterinario v = new Entidades1.Veterinario();
                v.Id = reader["Id"].ToString();
                v.Nombre = reader["Nombre"].ToString();
                v.Apellido = reader["Apellido"].ToString();
                v.Telefono = reader["Telefono"].ToString();
                v.Direccion = reader["Direccion"].ToString();
                v.Email = reader["Email"].ToString();
                lst.Add(v);
            }
            throw new NotImplementedException();
        }

        public void actualizar(Entidades1.Veterinario v)
        {
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "UPDATE veterinario SET Nombre=?Nombre WHERE Id=?Id;";
            cmd.Parameters.AddWithValue("?Id", v.Id);
            cmd.Parameters.AddWithValue("?Nombre", v.Nombre);
            cmd.Parameters.AddWithValue("?Apellido", v.Apellido);
            cmd.Parameters.AddWithValue("?Telefono", v.Telefono);
            cmd.Parameters.AddWithValue("?Direccion", v.Direccion);
            cmd.Parameters.AddWithValue("?Email", v.Email);
            cmd.ExecuteNonQuery(); 
            throw new NotImplementedException();
        }

        /// <summary>
        /// Eliminars the specified v.
        /// </summary>
        /// <param name="v">The v.</param>
        /// <exception cref="System.NotImplementedException"></exception>
        public void Eliminar(Entidades1.Veterinario v)
        {
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "DELETE FROM veterinario WHERE Id IN (?Id);"; 
            cmd.Parameters.AddWithValue("?Id", v.Id);
            cmd.Parameters.AddWithValue("?Nombre", v.Nombre);
            cmd.Parameters.AddWithValue("?Apellido", v.Apellido);
            cmd.Parameters.AddWithValue("?Telefono", v.Telefono);
            cmd.Parameters.AddWithValue("?Direccion", v.Direccion);
            cmd.Parameters.AddWithValue("?Email", v.Email);
            cmd.ExecuteNonQuery();
            throw new NotImplementedException();
        }
        
        public void Consultar(Entidades1.Veterinario v)
        {
            MySqlCommand cmd = conector.CreateCommand();
            cmd.CommandText = "select *from veterinario  WHERE Id=?Id";
            cmd.Parameters.AddWithValue("?Id", v.Id);
            cmd.Parameters.AddWithValue("?Nombre", v.Nombre);
            cmd.Parameters.AddWithValue("?Apellido", v.Apellido);
            cmd.Parameters.AddWithValue("?Telefono", v.Telefono);
            cmd.Parameters.AddWithValue("?Direccion", v.Direccion);
            cmd.Parameters.AddWithValue("?Email", v.Email);
            cmd.ExecuteNonQuery();
            throw new NotImplementedException();
        }
>>>>>>> .r19
>>>>>>> .r21
    }
}